1. Field of the Invention
This invention relates to computer systems and, more particularly, to computer systems management tools.
2. Description of the Related Art
The complexity of managing computer systems has been increasing rapidly. Enterprise information technology (IT) infrastructures may include tens or hundreds of thousands of hardware and software entities, such as computer servers, workstations, storage devices, networking devices, application software instances, and the like. Mission-critical enterprise applications may be distributed over a large number of computer servers and storage devices, and may in some cases comprise multiple independent layers or tiers provided by different vendors. Even applications intended for single users (e.g., intended for execution on a single desktop or laptop computer) may incorporate components from multiple vendors, and may rely on numerous hardware and software devices. Typically, different hardware and/or software vendors whose products need to be managed within the IT infrastructure implement their own custom approaches to the presentation of status and the detection, diagnosis and resolution of problems and errors. In aggregate, the stream of raw detailed status or error-related data that may be generated in even a medium-sized IT infrastructure will eventually become too large for effective analysis. As a result of the numbers and diversity of the entities involved, even the basic systems management task of monitoring the status of hardware and software entities within an IT infrastructure, and responding efficiently to unexpected situations such as errors or failures, has become progressively more difficult and expensive over time. More complex systems management tasks such as providing desired quality of service, e.g., based on service level agreements tailored to individual IT customers or groups, have become even harder to accomplish efficiently and effectively.
The problem of effectively distilling information about IT infrastructure entities into a useful form is not restricted to a single group of users such as IT administrators. A number of different groups of users of an enterprise IT environment may be interested in viewing “useful” information about the IT environment, where the definition of “usefulness” may vary from group to group, and sometimes from individual to individual. For example, executive-level managers may wish to view information on the IT infrastructure in a way that illustrates return on investment and/or organizational responsibility—e.g., to answer questions like “How much additional revenue has been generated as a result of the expansion of our data center in France?” or “Which laboratory or test site is responsible for the software testing of Product X, on which we have received N critical customer complaints from our Platinum-level customers over the last three months?”. IT administrative staff may be interested in information that relates more directly to anticipating and/or responding to operational hardware and software problems, such as answers to questions like “When are we likely to run out of storage space for database application D, based on the current rate of storage space usage?” or “How many tape devices should we devote to backup of critical data from data center C?”. Engineering or support staff may be interested in details related to their specific tasks: e.g., to answer questions like “Where can I get instructions on installing database management system S on operating system O?” or “What is the set of backup-related tasks I need to complete before the planned release date of software product P from development organization V to system test organization T?”. Each group or individual may prefer to manage their tasks using customized graphical views of “useful” relationships between various entities associated with IT infrastructures.
Traditional graphical techniques for summarizing systems management data have typically not been effective in meeting the diverse requirements of various groups of consumers of IT infrastructure information. For example, tree or list views are typically limited to representing containment or parent-child relationships, and may not work well when more than one type of relationship is to be represented. In addition, in some tree views where each parent-child link in a long chain of parent-child relationships may have to be individually traversed, a large number of “clicks” or “expand tree” operations may have to be performed before information of interest is obtained. Other techniques, such as various versions of Unified Modeling Language (UML) diagams or Entity Relationship (E-R) diagrams, may require users to learn a complex set of rules, standards or underlying theoretical principles, and may not be capable of easily representing arbitrary relationships or generating custom graphical representations that may be personalized by each individual user.